/*
 * ppmGen.cpp
 *
 *  Created on: 16.04.2013
 *      Author: Jonas
 *	letzes Update:
 Author: Jonas | Zweck: Source-Code aufgeräumt
 */

#ifndef PPMGEN_H_
#define PPMGEN_H_

#ifndef F_CPU
#define F_CPU 16000000UL
#endif

#include <avr/io.h>
#include <util/delay.h>
#include "Empf.h"

//Ports definieren:
#define PORT_MOTOR_1 PORTA
#define PORT_MOTOR_2 PORTA
#define PORT_MOTOR_3 PORTA
#define PORT_MOTOR_4 PORTA

//DDRs definieren:
#define DDR_MOTOR_1 DDRA
#define DDR_MOTOR_2 DDRA
#define DDR_MOTOR_3 DDRA
#define DDR_MOTOR_4 DDRA

//Pins definieren:
#define PIN_MOTOR_1 PA0
#define PIN_MOTOR_2 PA1
#define PIN_MOTOR_3 PA2
#define PIN_MOTOR_4 PA3

//ERFAHRUNGSWERTE HIER:
#define MAXPOWER 200		// in 10 µs
#define MINPOWER 100

#define US_PRO_PROZENT (MAXPOWER - MINPOWER) / 100

//Methode zum Initialisieren des PPM-Generators
void ppmGenInit();
//Methode zum senden von Motorwerten an die Regler
void ppmSendSignal(int8_t power_motor1, int8_t power_motor2,
		int8_t power_motor3, int8_t power_motor4);

#endif
